package com.app.service;

import com.app.model.AdminUserModel;
import com.app.model.ComplaintModel;
import com.app.model.UserModel;
import com.app.vo.ComplainVo;

import java.util.List;

public interface ComplaintService {
    String addComplaint(ComplaintModel model);

    List<ComplaintModel> complaintList(Integer userId);

    ComplaintModel selectSchedule(String code);
    ComplaintModel selectSchedule(String code,Integer adminId);

    ComplaintModel selectDetail(Integer id);

    ComplaintModel selectDetail(Integer id,Integer adminId);

    void deleteComplaintList(Integer id);

    void examineComplaint(Integer id, Integer status, String remark, String handleRemark, String rejectRemark, AdminUserModel user);

    ComplainVo selectComplaintList(Integer page, Integer limit, String keyword, String selectCrtTime,AdminUserModel user );

    ComplainVo getComplaintList(Integer page, Integer limit, String keyword, String selectCrtTime,String isJiuquan);

    List<UserModel> whiteList();

    List<ComplaintModel> examineComplaintList(Integer status);
    List<ComplaintModel> examineComplaintList(Integer status,Integer adminId);

    Object selectHandle(Integer id);

    List<ComplaintModel> selectByUserId(Integer id);

    int selectAllCount();

    int selectStatusCount();

    int selectByType(Integer type);

    int selectByStatus(Integer status);

    void pushStatus(ComplaintModel source);

    ComplaintModel getById(Integer id);
}
